Process Environment Block (PEB) — это золотая жила для исследователей кода, содержащая критически важные данные о процессе, обычно скрытые в ядре. В
новой статье разбираем, как с помощью PEB можно:
🔸 Собирать информацию без Win32API (версия ОС, дебаг-флаги, загруженные DLL)
🔸 Эксплуатировать уязвимости консоли (DoS через сброс ConsoleHandle)
🔸 Получать доступ к системным структурам (KUSER_SHARED_DATA, RTL_USER_PROCESS_PARAMETERS)
Содержание статьи: 1️⃣ Зачем нужен PEB и как он связан с EPROCESS/ETHREAD.
2️⃣ Чтение полей PEB на ассемблере (BeingDebugged, ImageBaseAddress, ProcessHeap).
3️⃣ Обход загруженных модулей через PEB_LDR_DATA — альтернатива EnumProcessModules.
4️⃣ Атака на консоль — как создать "зомби"-окна через модификацию RTL_USER_PROCESS_PARAMETERS.
5️⃣ Доступ к KUSER_SHARED_DATA (TickCount, память, CPU) — читаем без перехода в ядро.
🔴Исходники и полная статья